package com.efuture.chapterthree

/* @Description:let内置函数
 * @Auther: zhaoshanshan
 * @Date: 2022/03/06/12:26 下午
 */

//let内置函数的特点
//let函数返回类型是根据匿名函数最后一行返回决定的
//let 内置函数默认持有it 是例子中集合本身

fun main() {
    //普通方式 对集合的一个元素相加
    val list = listOf(6,6,3,4,6,2,67,4)
    println(list.first()+list.first())
    //let方式对集合的第一个元素相加
    val result = list.let {
        it.first()+it.first();
    }
    println(result)

    println(getMethod1(null))
    println(getMethod2("zhaoshanshan"))

}
//普通方式
fun getMethod1(value:String?):String{
    return if(null==value)"传递的内容为空" else "传递内容为$value"
}
//let方式
fun getMethod2(value:String?):String{
    return value?.let {
       "传递的内容为$it"
    }?:"传递的内容为空"
}